package com.mazaiting.manager.service.impl;

import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.mazaiting.manager.domain.bo.RequestParamBO;
import com.mazaiting.manager.domain.entity.SysUserLoginHistory;
import com.mazaiting.manager.mapper.ISysUserLoginHistoryMapper;
import com.mazaiting.manager.service.ISysUserLoginHistoryService;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.stereotype.Service;

/**
 * sys_user_login_history 用户登录记录表 服务实现类
 *
 * @author 党海亮
 * @since 2022-03-25
 */
@Service
public class SysUserLoginHistoryServiceImpl extends ServiceImpl<ISysUserLoginHistoryMapper, SysUserLoginHistory> implements ISysUserLoginHistoryService {

    /**
     * 日志信息
     */
    private final Logger logger = LoggerFactory.getLogger(this.getClass());

    @Override
    public void saveUserLoginInfo(Long userId, RequestParamBO paramEntity ) {
        SysUserLoginHistory sysUserLoginHistory = new SysUserLoginHistory();
        // 设置userId
        sysUserLoginHistory.setUserId(userId);
        // 设置ip地址
        sysUserLoginHistory.setAddrIp(paramEntity.getAddrIp());
        // 设置设备信息
        sysUserLoginHistory.setDeviceInfo(paramEntity.getDeviceInfo());
        // 设置浏览器信息
        sysUserLoginHistory.setBrowser(paramEntity.getBrowser());
        // 获取浏览器版本
        sysUserLoginHistory.setBrowserVersion(paramEntity.getBrowserVersion());
        // 设置最后登录时间
        sysUserLoginHistory.setLoginTime(paramEntity.getLoginTime());
        baseMapper.insert(sysUserLoginHistory);
        logger.info("用户登录信息插入成功");
    }
}
